Voice-over-IP enabled chat

ABSTRACT

A network-based system and method for providing anonymous voice communications using the telephone network and data communications links under the direction of a Call Broker and associated network elements. A user (the call initiator) present in a text chat room session establishes a data connection to Call Broker and, after qualifying for access (e.g., using credit card information) and providing a callback number, receives voice session information and participant access codes for each desired participant in a voice call. The initiator causes session information and participant codes to be passed to one or more selected chat participants in the current text chat room. When a selected participant uses the received session information, and enters the received participant code and a callback number, the Call Broker in cooperation with a Network Adjunct Processor (NAP) completes voice links to the initiator and the selected participant(s).

This application is a continuation of prior application Ser. No.09/326,263 filed Jun. 7, 1999 now U.S. Pat. No. 7,039,040 which isincorporated herein by reference.

FIELD OF THE INVENTION

The present invention relates generally to the field oftelecommunications networks. More particularly, the present inventionrelates, in one aspect, to combined networks for simultaneous voice anddata communications. Still more particularly, aspects of the presentinvention relate to voice communications using data network protocolswhile permitting anonymous voice conversation participants to maintainseparate simultaneous data communications links with each other or otheronline users.

BACKGROUND OF THE INVENTION

Currently, communications using the Internet (or other data network)permit users to communicate with one another anonymously over dialed-upor other access lines. For example, online service providers allow usersto connect their personal computers (PCs) together for purposes ofanonymously communicating with one another in online text discussionsusing so-called “channels,” “virtual rooms” or “chat” rooms (or any of anumber of similar constructs). Text “chats” take place in such chatrooms by users sending text to one another; some text chat participantsmay merely observe (“listen”). Once a chat session is in place, onlineservice users may elect to enter or exit a session at will. Generally,users taking part in a chat are listed or otherwise indicated on eachsession user's computer screen in terms of “nicknames,” or “handles” topreserve user anonymity—a hallmark of chat and many other forms ofonline communications.

Recently, features such as “sub-chats” or “private chats” have beenprovided in some online contexts by which a subset (self-selected orupon request by others) of the on line chatters are moved to a separatechat (virtual) venue. Another feature available in some chat sessions is“Instant Messaging” or similar-named facility by which one user in achat session is able to send direct (text) messages to one or more otherusers taking part in the chat. Thus, if side comments not appropriatefor general observation are desired between two users, selection(usually by a screen message button) of the instant messaging featureresults in a window on the selecting user's computer screen along withprompts for the intended message recipient and the content of themessage. When the message originator completes these fields and a Send(or similar) screen button is pressed (clicked on), the message is sentprivately to the intended recipient using the hosting chat server'smessage facilities. Typical uses of these instant messages includesetting up private chat rooms and inviting others to join.

While the chat sessions described above are all text chat rooms, i.e.,all communication is via text messages between the chat session users,provision has been made of late for voice chat rooms. In typical voicechat rooms a number of users participate in a manner similar to adiscussion by way of a telephone conference call. The mechanism by whichsuch voice chat sessions operate is usually the same or very closelyrelated to those used in text chats. Thus, in typical arrangement, afunctional voice chat “layer” is added over what is basically a textchat session control mechanism, thereby reducing the number of changesrequired at the chat server to effectuate voice capabilities. Such voicechats proceed entirely within the chat server (or servers fordistributed chat networks); no connection to the telephone network bythe chatter (other than a data link via modem to a data network accesspoint) is required. While such voice chat conversations typically provesatisfactory for many purposes, private voice chat room functionalityhas not emerged. Among the factors contributing to this condition arenetwork host capacity and complexity of changes at such network chathosts.

One approach to introducing voice communications between a chat sessionis described in co-pending patent application entitled “Anonymous VoiceCommunication” by R. B. Leipow, application Ser. No. 08/673,865, filedJul. 2, 1996 and assigned to the assignee of the present application. Inthat application, which is hereby incorporated by reference in thepresent application as if set forth in its entirety herein, a trustedagent is used to establish voice communications between online partieswhile maintaining anonymity of the parties. The trusted agent isillustratively implemented as an adjunct to processor functions at anetwork server, such as an online chat server.

Other recent voice chat improvements are described in copendingapplication Ser. No. 09/111,672 by A. DeSimone entitled “Anonymous VoiceCommunication Using On-Line Controls,” filed Jul. 8, 1998 and assignedto the assignee of the present application. This last-cited applicationis also hereby incorporated by reference as if set forth in its entiretyherein.

While efforts to achieve anonymous telephone communications betweenusers in contexts like online chat sessions have proven possible, suchefforts have generally required significant modifications at an onlineserver. In addition, prior voice chat arrangements have typicallyrequired that each participant in the voice conversation either have twotelephone lines, or have required that the existing online text chat orother data connection be terminated and the subscriber telephone lineused with a normal voice telephone.

SUMMARY OF THE INVENTION

The present invention overcomes limitations of the prior art andachieves a technical advance in providing anonymous voice communicationsusing the telephone network and data communications links under thedirection of a Call Broker and associated network elements.

In an illustrative embodiment, a user (the call initiator) present in achat room session establishes a data connection to a Call Broker siteusing, e.g., an Internet web browser. After using the browser or thelike to provide appropriate billing qualification (e.g., using creditcard information) and to provide a callback number, the initiatorreceives a call-control information applet from the Call Broker site towhich it connected, thus establishing a Call Broker session. As isknown, credit card information is advantageously captured in the browserto allow transfer over the Internet in encrypted form without requiringadditional security measures in the applet. In this first illustrativeimplementation, the session is to be billed to the initiator.

The information received from the Call Broker typically includes sessioninformation and a Participant Authorization Code (PAC). Using an instantmessaging or similar mechanism, the initiator causes session informationand participant codes to be passed to one or more selected chatparticipants in the current chat room. When a chosen participant usesthe received session information in contacting the identified CallBroker, and enters the received participant code and a call-back number,the Call Broker in cooperation with a Network Adjunct Processor (NAP)completes voice links to the initiator and the selected participant(s),typically in that order. The telephone call is thereby completed betweenthe initiator and selected chat session participant(s) without sharingtelephone numbers. The process of supplying session and PAC (or similarauthorization) information can be used to add other participants in thetext chat room to the voice session.

In accordance with an aspect of the present invention, the need for eachparty to have a second subscriber line is advantageously avoided byhaving the Call Broker arrange to have the voice link for at least oneselected (text) chat session participant (typically including the voicechat initiator) completed as a Voice over IP (VoIP) link. Voice links toone or more other participants in the voice call may be completed overthe Public Switched Telephone Network (PSTN) or otherwise than via VoIPlinks.

In accordance with another aspect of the present invention, when a PSTNlink that the Call Broker (acting in cooperation with a NAP) seeks tomake to a call participant is found to be busy (with the ongoing textchat conversation or other online call), the call is advantageously sentto the Internet Service Provider (ISP) or other data network accessprovider serving the online called party. The ISP or other accessprovider then causes a message to be sent to the online party sought tobe engaged as a voice call participant. Typically, this message providesa range of options for the (called party) online user, e.g., toterminate the online session, to receive the incoming voice call througha VoIP link, or to have the incoming voice call rejected or delayed. Thevoice call is then handled in accordance with the option selected by theonline user.

BRIEF DESCRIPTION OF THE DRAWING

The above-summarized description of illustrative embodiments of thepresent invention will be more fully understood upon a consideration ofthe following detailed description and the attached drawing, wherein:

FIG. 1 is an overall view of an illustrative system embodiment of thepresent invention showing the interconnection of a traditional voicenetwork interconnected with the Internet through ISP access servers andvoice over IP (VOIP) gateways.

FIG. 2 shows a typical Network Adjunct Processor (NAP) in combinationwith a Call Broker for use in the illustrative system of FIG. 1.

FIG. 3 shows a flow-sequence chart illustrating an alternative mode ofoperation of the network of FIG. 1 to achieve data and voice connectionsbetween or among users, which mode of operation avoids the need for eachuser to have two lines.

DETAILED DESCRIPTION

Illustrative System Overview

FIG. 1 shows an illustrative network for use with a range of embodimentsof the present invention. There, first and second pluralities oftelephone stations 101-1 through 5-101-M and 181-1 through 181-N areshown connected to respective central offices 102 and 155. These centraloffices are, in turn, connected to representative toll switches 110 and140 to permit normal voice calling between telephone stations inrespective pluralities of telephone stations. Central offices 102 and155 are also shown connected to representative signal transfer points(STPs) 115 and 137, which STPs are, in turn, shown interconnectedthrough a signaling network of STPs also comprising STPs 135, and 145.These STPs and their interconnection are typical of signaling system 7(SS7) signaling networks well known in the telecommunications arts. Theillustrative network of FIG. 1 also includes additional toll switches190 and 198. In appropriate circumstances, some or all of the tollswitches shown in FIG. 1 may be operated by a local exchange carrier(LEC), an interexchange carrier (IXC), or another entity. While each ofthe switches are shown interconnecting with STPs in FIG. 1, it will beunderstood that, in particular cases, some switches may not themselvesinclude SS7 capabilities, and so are connected to the SS7 networkthrough another SS7-enabled switch.

Also shown interconnected with the standard voice network arrangementdescribed so far with reference to FIG. 1 are illustrative networkservices platforms 125 and 126, shown as including respective processors131 and 127, as well as respective database systems 129 and 128. Theselatter service platforms are illustrative of so-called intelligentnetwork platforms that include service control points, SCPs, (or networkcontrol points, NCPs), known in the art. For example, network platformsinclude the well known 8xx (toll-free calling) and calling cardplatforms. In typical fashion, platforms such as illustrative platforms125 and 126 in FIG. 1 receive queries, commands or other information andillustratively provide routing, authentication and other controlinformation.

In the illustrative network embodiment shown in FIG. 1, platform 126advantageously serves as an SCP configured to provide calling cardvalidation functionality. Thus platform 126 is arranged to receivecalling card queries from network switches through one or more of theSTPs shown in FIG. 1, and to provide authentication (or not) for thereceived account information and personal identification number (PIN) orother identification appropriate to the circumstances.

Further descriptions of telephone networks of the type shown generallyin FIG. 1 may be found in the literature, including, e.g., IntelligentNetworks, by Jan Thorner, Artech House, Norwood, Mass., 1994, andSignaling System 7, by T. Russell, McGraw-Hill, New York, 1995.

The network of FIG. 1 also shows first and second pluralities ofcomputers, workstations or computer terminal devices (collectively,“computers”) appearing as 105-1 through 105-P, and 182-1 through 182-Q.These computers may be desktop or portable computers, or may beterminals connected through a centralized computer, all to provide userswith keyboard and other input facilities (such as a mouse or otherpointing device) and display facilities well known in the art. Intypical operation, these computers are arranged to communicate over thePSTN or other telephone network using standard modems, and to connect toone or more Internet Service Providers (ISPs) through portions of suchtelephone networks for access to the Internet (shown as the “cloud” 195in FIG. 1), including chat and messaging facilities of the Internet.

Hardware in computers 105-i and 182-j will typically include a soundcard, such as the well-known SoundBlaster sound cards or those availableform Voyetra Turtle Beach, Inc., for, among other things, convertingspeech inputs from a microphone into digitized speech signals and forconverting received digitized speech signals into analog speech signalsfor driving a loudspeaker or earphones. In some cases this sound cardfunctionality is built into a computer motherboard, or may be providedin an external device used with the computer.

Software executing in computers 105-i and 182-j will typically includean Internet “browser,” such as are available from Microsoft Corporationor Netscape Corporation, among others, for interacting with Internetfacilities. In some cases, such browser software may be augmented byadd-on or plug-in software for introducing or upgrading messaging and/orchat software. In one illustrative case, both user (client) and serversoftware (executing at an ISP access server, or related network server)will be based on well-known chat components such as mIRC client andserver software by mIRC Co. Ltd. which is available on the Internet.Further information about well-known chat software and procedures isavailable from the Undernet User Committee web site. Of particular noteis Network Working Group Request for Comments: 1459, by J. Oikarinen andD. Reed, May. 1993, available at the Undernet web site. This latterdocument presents a version of the Internet Relay Chat (IRC) Protocolthat has provided important bases for current chat implementations.Other particular client/server implementations of various chatfunctionalities include several quIRC chat software modules and thoseavailable from Activerse, Inc. Client software is also available ascomponents of browser software and from ISPs such as AT&T Worldnet andAmerica Online for interacting over chat and messaging facilities.

In illustrative operation of the network of FIG. 1 for Internetconnections, a user at one of the computers, such as 105-1 in thenetwork of FIG. 1 will gain access to an ISP access server, such asserver 191 in FIG. 1, through a dial-up connection by way of centraloffice 102 and toll switch 190. In some cases, the ISP access serverwill connect directly to a central office, such as 102 in FIG. 1, and inother cases, additional toll or other switches will be used to connectthe user at computer 105-1 to an ISP server such as 191 in FIG. 1.

Once connected to access server 191, the user at computer 105-1, andother users at other computers such as computers 105-i and 182-j shownin FIG. 1, will typically login in well known fashion and begininteracting with Internet facilities. Among the activities pursued byusers are the aforementioned chat facilities. For example, terminal105-1 and 182-1 may be connected through respective ISP access servers191 and 196 (which servers may be under the control of the same ISP, orindependently controlled) to chat server 193 over the Internet. The chatserver may, of course, actually be one of the access servers, or an ISPserver connected in a distributed network with the access server—or thechat server may be independent of either or both of the ISPs.

It will be appreciated that connections between computers such as 105-ior 182-j are typically to central offices such as 102 and 155 overnormal dial-up subscriber telephone lines, e.g., from a user's home oroffice. While many homes and offices are supplied with more than onesubscriber line, many locations, especially homes, have only a singleactive subscriber line entering the premises. In other cases where morethan one subscriber line may be present, the user of a computer such as105-1 may only be allowed to use one subscriber line for all of his/hercommunications. For example, in a two-line household, one line may bereserved for business or other dedicated purpose of one member of thehousehold. Thus, all Internet connections and voice conversations byother members of the household normally must be pursued using theremaining line.

Accordingly, when a user at a location with only a single available lineis active in an Internet session, e.g., to a chat room, the line isunavailable to originate or receive normal telephone calls using atelephone such as 101-1. In other cases, of course, a computer such as105-1 and a telephone station set such as 101-1 may have separatesubscriber lines and may be active simultaneously without conflict.

One application of the teachings of the incorporated DeSimoneapplication Ser. No. 09/111,672, permits a first user engaged in a textchat session to contact a “Call Broker” to obtain a so-called“Participant Authorization Code” (PAC) and a session identifier, whichinformation is then supplied to one or more other chat participants. Thefirst user will typically provide payment information and a callbacktelephone number. When one or more of the other chat participantscontacts the Call Broker and supplies the session and PAC information(typically provided in the chat or messaging context by the first user),along with respective callback telephone numbers, the Call Broker seeksto establish a telephone connection between the chat participantselecting to take part, usually including the first user. Using thisapproach, the anonymity of the telephone call participants ismaintained, as it typically is in the text chat session.

Of course, if one or more of the would-be participants in the telephonecall has but a single available subscriber line at the user location,then an attempt by the Call Broker to complete a telephone call to thecallback number over the PSTN will normally not be successful if theuser at that location continues to be active in the Internet text chatsession or other computer calling activity. This problem is addressed inU.S. Pat. No. 5,805,587, issued on Sep. 8, 1998 to J. H. Norris and T.L. Russell and assigned to the assignee of the present invention. In oneaspect, the last-cited patent (hereinafter, the '587 patent) describessending of a message to a user who is online to an ISP or other server.The message provides information regarding a telephone call directed tothe subscriber line currently being used for the online call. A user istypically presented with a range of options, including terminating thecomputer call in favor of receiving the incoming voice call on atelephone set. The '587 patent is hereby incorporated by reference inthe present application as if set forth in its entirety herein.

Voice-Over-IP Enhanced Chat

The present detailed description will now treat extensions andenhancements of prior voice chat arrangements described above. In oneaspect, we describe modification to the network of FIG. 1 as presentedabove, and further describe alternative modes of operation of such amodified network.

The term “voice-over-IP” (VoIP) has come to reflect a variety of networkelements, techniques and technologies, all contributing, in one way oranother, to the transmission of a voice call in accordance with theInternet Protocol (IP) over at least a part of its path between one ormore voice callers and one or more other voice call participants. Thus,a voice telephone call in digital form is segmented in well-known waysinto packets for transmission in the same form as for other IP sessions,such as for text information over computer connections to chat rooms.These voice information packets may be routed to a voice chat server,which often operates in a “layer” above the normal text chat—as notedabove.

In other cases, voice packets may be delivered to a VoIP “gateway”where, after suitable authentication and collection of billing oraccount data, they are delivered through the Internet or other IPnetwork for ultimate delivery to one or more call participants. VoPgateways and associated network elements are available from manysuppliers. For example, eFusion, Inc., Lucent Technologies, Inc andVocalTec Commnunications market such VoIP gateways and related productsto enable interconnections between the Public Switched Telephone Networkand data networks (including the Internet). The Internet EngineeringTask Force (IETF), the iNOW industry consortium and other standardsbodies are considering various proposals for enabling Internet telephonyapplications. Other aspects of VoIP are described, e.g., in DeliveringVoice over IP Networks, by D. Minoli and E. Minoli, John Wiley & Sons,1998.

In an illustrative application of VoIP arising from text chat sessions,an eFusion IP telephony gateway is used to interact withInternet-enabled client software (including, e.g., Internet CallAssistant—ICA—software) at a host computer, such as user computer 105-1in FIG. 1. The VoIP client software at user computer 105-1 is typicallyprovided as a plug-in to the browser software otherwise operating atthat computer when online. This client VoIP software will illustrativelyprovide for a login at the exemplary eFusion VoIP gateway, e.g., 192 inFIG. 1, each time the user at computer 105-1 gains access to theInternet through illustrative ISP 191 in FIG. 1. Among other things, theVoIP login (which typically is effected automatically by the plug-insoftware, without overt action by the user) provides gateway 192 withinformation that user 105-1 is online to the Internet and can receiveincoming IP packets from the gateway when required.

For present illustrative purposes, it suffices to treat text chatsessions as existing between chat clients at user computers such as105-1 and 182-1 through respective ISP access servers such as 191 and196 to a chat server 193 in FIG. 1. As will be understood by thoseskilled in the art, the actual chat server function may be provided atthe ISP access server (or networked in a distributed ISP network to arelated ISP chat server), or by another entity providing the chatfunction on the Internet.

Also included in the network of FIG. 1 is a Call Broker 199 of the typedescribed generally in the above-cited incorporated DeSimone patentapplication. In particular, Call Broker 199 receives requests from afirst Internet user (hereinafter the “host”) and, after performingauthentication and account operations, provides the above describedsession and PAC code information to the host. Upon appropriate furtheraccess by those possessing session and PAC information (hereinafter, the“participants”), and upon receipt of callback numbers for theparticipants, Call Broker 199 seeks to complete telephone calls to thoseparticipants at their respective callback numbers. Alternative modes ofoperation of such a Call Broker in the context of the network of FIG. 1will be described in the sequel.

An additional network element shown in FIG. 1 is Network AdjunctProcessor 133 interposed between PSTN elements (STP 145, toll switch198) and Call Broker 199. NAP 133 advantageously provides bridging ofcalls setup by Call Broker 199 and typically acts in response to controlsignals from Call Broker 199.

More particularly, as shown in FIG. 2, Call Broker 199 receives requestsover input 201 to set up calls from users participating in chat roomsand elsewhere in Internet or other data network sessions. Call Brokerprocessor 205, operating under control of a program stored in memory210, and responding to input requests through Internet Protocol (IP)interface 225, sends queries (typically over SS7 signaling links 216,via SS7 facilities unit 215) to a validation server such as card serverplatform 126 in FIG. 1. In some embodiments, it proves useful to providefor local account validation at Call Broker 199. Thus, Call Broker 199is shown in FIG. 2 as including a validation database 218 forinteracting with processor 205 in accordance with well known validationprocesses. Signaling information exchanged (via SS7 links 216 orotherwise) will typically be employed to perform call rating and billingoperations, as is known in the art. Other particular account validation,and particular call rating and billing arrangements, will be employed bythose skilled in the art as circumstances may suggest. Upon receipt ofauthorization from validation server 126 (or other validation source),Call Broker 199 sets up voice links as will be described below.

Network Adjunct Processor (NAP) 133 receives control information on path230 from the call setup facilities of Call Broker 199 and hands offoriginations from Call Broker 199 to the PSTN. These call originationsfrom Call Broker 199 pass through NAP 133, illustratively via voicetrunks 240 and 270. Also shown passing by way of NAP 133 are SS7 links263 to the PSTN, which links are used by call setup unit 220 andprocessor 205 in Call Broker 215 in establishing connections to theparties to a desired voice call. In particular, answer signalinginformation indicating that a called party answers a voice call setup byCall Broker 199 is used to pass control information over path 230 tobridge processor 260 in NAP 133 as shown in FIG. 2. When calls to two ormore parties to a desired voice call have answered the calls setup byCall Broker 199 (and therefore are available for bridging), NAP providesthe selective bridging of calls passing from Call Broker 199 to thePSTN. As shown in FIG. 2. NAP 133 includes bridge 250. In performing itsinteraction with Call Broker 199, NAP advantageously performs suchnetwork functions as collecting DTMF digits, playing tones and promptsand selectively muting a call leg.

Thus, using the facilities of FIGS. 1 and 2 voice calls are completedbetween users present in a text chat room while preserving host andother participant anonymity.

Call Broker 199 may be implemented as a special purpose platform or maybe realized as a well-known PBX with standard SS7 and IP interfacefacilities. Many so-called unPBX systems, or generally programmableswitches, will likewise find application in this context. For adescription of such unPBX systems, reference may be had to ComputerTelephony, May. 1997, pp. 20-97. NAP 133 may likewise be implementedusing a special purpose bridging platform, or using well known PBX (orunPBX) or other programmable switches. While Call Broker 199 and NAP 133may provide separate functionality in separate physical systems, it willprove advantageous in many applications to combine the data, signalingand PSTN interfaces and the described switching and call controlfunctionality in a single unit with combined or coordinated processingand memory. Call setup and bridging functions are individually wellknown and are readily combined in a single unit such as a PBX or unPBX.

FIG. 3 is a flow-sequence diagram illustrating operations at and betweenelements of the network of FIG. 1 in processing voice calls incooperation with ongoing (text) chat operations. For purposes ofsimplicity of presentation, a description of the operations shown inFIG. 3 will proceed primarily in terms of voice calling between a first(originating) user (“the host”) and a second network user, the“participant.” This mode of operation is conveniently referred to as aone-to-one voice call. It will be recognized, however, that theoperations to be described can be applied in a context of pluralparticipants, i.e., a one-to-many voice call scenario, or voice chat“conference call.”

PSTN 300 is used in FIG. 3 to represent the telephone network switches,including central offices, STPs and standard telephone network platformssuch as calling card SCP 126. Network Adjunct Processor 133 and CallBroker 199 are platforms of the type shown in FIG. 2 for performing thefunctions and steps to be described in the following elaboration ofprocessing in accordance with FIG. 3.

A typical operating sequence in accordance with FIG. 3 will now befollowed in order of the numbered steps shown there. In particular, anillustrative sequence begins (Step 0) with host computer 105-1 loggingonto the VoIP gateway 192, using, e.g., the above-noted eFusion VoIPfunctionality in host computer 105-1 cooperating with gateway 192 (or197). Since this log-ori process typically occurs each time the userlogs onto the Internet, it is accompanied by the busying of theavailable subscriber phone line. This log-in process betweenillustrative computer 105-1 and VoIP system 192 typically includes anexchange of messages whereby the computer 105-1 sends a loginID/password and its current IP address; gateway 192 compares the loginID/password to previously-provisioned information stored in tables atgateway 192 and returns a confirmation message if the comparison yieldsa match.

With log-on to the VoIP gateway established, an existing (or a newlyentered) text chat illustratively gives rise to a desire on the part ofthe host user to establish a voice telephone call with one (or more)participants. Toward this end, the host 105-I sends a request (Step 1)to the Call Broker 199 seeking to create a voice call by way of the chatsession, and including billing or account information—typically callingcard (or pre-paid card) account and PIN information. Assuming the callis to be billed to a calling card for which the host is an authorizeduser, the calling card information is compared with existing accountinformation (Step 1A) to validate the card information. In some cases itwill prove convenient to provide validation services locally withrespect to the Call Broker, and in other circumstances use of a networkdatabase such as calling card validation server (SCP) 126 shown inFIG. 1. When Call Broker 199 receives validation of the accountinformation (e.g., from SCP 126 or from local data base 126), the CallBroker (Step 2) returns session ID information to the host 105-1. Usingthe construct of the incorporated DeSimone patent application, theinformation returned to host 105-1 will include not only a session IDbut also a PAC code.

The host 105-1 passes (Step 3) the session ID and other necessaryinformation (e.g., PAC code, where applicable) to the desired voice callparticipant (illustratively, the user at computer 182-1). Suchnotification will typically be by way of a private message (e.g., adirect message in the text chat session) to the desired participant. Anotified text chat participant receiving the voice call sessioninformation from the host and desiring to participate in the voice callthen sends (Step 3A) the session ID (and PAC, as appropriate) to theCall Broker 199 along with a callback number. The Call Broker thenplaces a call to the host at the assigned VoIP gateway number suppliedby the host at Step 1; the call is processed through the NAP (Step 4B)and is sent through the PSTN 300 to the illustrative VoIP gateway 192associated with computer 105-1 (Step 4C).

Identification of the IP address of the host (illustratively 105-1) byCall Broker 199 is conveniently accomplished by using the callbacknumber provided by the host when contacting the Call Broker. Thus, aspart of the service subscription by users such as the user at computer105-1, a callback number is provided to Vop gateway 192 which isconveniently used as a key into account records for the subscribinguser. The callback number supplied by the host upon requesting thecurrent voice call session from Call Broker 199 is then used to identifythe online status of the destination VoIP link, as well as thecorresponding IP address.

The VoIP gateway 192 then rings the Internet telephone at the hostcomputer (Step 5A) and, upon answer by the Internet telephone (Step 5B),answers the call from Call Broker 199 by way of PSTN 300 and NAP 133(Step 6). Having the call connected from the host, the Call Broker thendials the participant (Step 7) at the callback number provided by theparticipant. Unlike the call placed by the Call Broker to the host (Step4), the call to the participant is advantageously placed over the PSTN(by way of the NAP) directly to the participant's telephone, hereassumedly telephone 181-1. When the participant answers (Step 8) attelephone 181-1 the call is extended through the PSTN to the NAP. Uponreceipt of the answer by both the host and the participant, the NAPadvantageously bridges the call. It will be appreciated that the use ofVoIP gateway in communication with host 105-1 avoids the need for twosubscriber lines at the host location.

When one of the host or participant terminates the call, the terminationis signaled to the NAP, which then terminates the bridge and sendsaccounting information to the Call Broker, if not already present at thelatter. If more than one participant has been bridged on to a voice callusing the above-described steps, then departure of each participant willbe detected at the NAP and accumulating billing concluded for thedeparting participant's voice link. The accumulated total for each linkwill then be added to the total billing for the host. In some cases, allvoice call links (and billing for these links) will be terminated upondeparture of the host from the bridged call.

While the foregoing description has proceeded in terms of a voice callincluding a VoIP call link to the host, and a normal PSTN link to one ormore participants, nothing in the present invention prevents aparticipant other than the host from being linked to the voiceconversation over a VOIP link, nor for the host to be connected to thevoice call via the PSTN instead of one or more other participants. Inappropriate cases, both the host and all participants can be connectedover VoIP links using the above-described process. The Call Broker canadvantageously incorporate call setup optimization techniques, based,e.g., on the location of the callback numbers and congestion andavailable bandwidth for VoIP calls to determine which links progressover the PSTN and which links employ VoIP processing.

A second subscriber line at participants' locations can also be avoidedin accordance with another illustrative embodiment of the presentinvention. This approach may be used, for example, when a call is placedby Call Broker 199 through NAP 310 to a would-be participant in a voicecall (as described above), and that user has no available subscriberline. This unavailability will typically occur because a subscriber lineat that location continues to be used for a text chat session or otherdata application using computer 182-1. Recall that in seeking toparticipate in the voice call the user at computer 182-1 supplies CallBroker 199 with a callback number. Thus, by providing the number of theline that the computer 182-1 is connected to, the would-be participantis seeking to have the voice call completed through computer 182-1, ifat all, in the same fashion as was described for the host.

In accordance with the present alternative embodiment, the attemptedcall by NAP 310 illustratively employs the call notification techniqueof U.S. Pat. No. 5,805,587 (hereinafter '587 patent). In particular, theattempted call to the subscriber line that is busy with a dataconnection by computer 182-1 through its ISP access server 196 isadvantageously forwarded in accordance with the teachings of the '587patent to the ISP access server 196 (sometimes referred to as InternetAccess Server or IAS). Using the incorporated teachings of the '587patent, a message is sent to the computer 182-1 by the ISP access serverinforming the user at computer 182-1 of the arrival of a voice messageand presenting a number of alternatives for handling the call. (In manycases it will be unnecessary to present a full range of alternativesbecause the user at computer 182-1 has very recently indicated aninterest in taking part in a voice call.) In the general case, onealternative is to continue to use the computer for the text chat orother data connections and to also receive the voice call as convertedto streaming audio or an Internet voice call. An illustrativearrangement given in the '587 patent describes the use of VocalTecsoftware for performing the required packetizing, depacketizing andrelated functions used in communicating the voice call to a computersuch as 182-1 in FIG. 1.

While the above-described embodiments are couched in terms of IPprotocol messages and the Internet, those skilled in the art willrecognize that other particular data communications protocols may beused for communicating digitized voice signals. Likewise, thecharacteristics of the Internet and other networks continue to evolve.Chat techniques are not uniquely associated with the Internet, nor theIP protocol.

While many of the aspects of the PSTN described above involve use of theSS7 signaling protocol, other particular signaling techniques may beused in appropriate circumstances. For example, the well-known ISDNsignaling protocols can be used for many applications of the presentinvention.

The functionalities of the NAP described in illustrative embodimentsabove may, of course, be combined with those of the Call Broker, or onemay be used as an adjunct to the other or to another network element,such as a PBX or PSTN switch.

While validation of host charging information was couched in terms ofcalling card processing in the above descriptions of illustrativeembodiments, it will be understood by those skilled in the art thatprepaid calling card account identification and PIN validation may beemployed as well.

Likewise, the online status of a desired voice call participant, andtherefore the availability of at least one subscriber line to receive aPSTN voice call, as well as the current IP address of such an onlinewould-be voice call participant, may be maintained in a network databasesystem represented by ISP SCP 125 in FIG. 1. SCP 125 is seen to includeISP database 129 and ISP service processor 131, each generally of theform used for other PSTN network services. Additional information storedat SCP 125 will include, in appropriate cases, alternative subscriberlines, IP addresses or other termination possibilities, such as voicemessage recording devices, call forwarding locations and the like. TheISP SCP 125 may serve more than one ISP, but typically relies on loginand logoff information supplied by participating ISPs over SS7 links(shown in FIG. 1) or IP or other data messages (not shown). Informationstored in ISP SCP 125 may be used to supplement information stored atCall Broker 199 or VoIP gateways 192, 197 or at other Internet nodes.

Though only a single Call Broker 199 is shown in the representativenetwork of FIG. 1, it should be understood that many such Call Brokerscan be included. Moreover, these plural Call Brokers may be networkedand may serve as proxies for other Call Brokers as is known in standardInternet practice. In networks including plural Call Brokers sessioninformation forwarded to desired voice call participants will includeinformation identifying the appropriate Call Broker(s).

Though the voice call links established by Call Broker 199 in theabove-described illustrative embodiments were all links to existing textchat participants, in appropriate circumstances the host (or otherauthorizing participant) may request that Call Broker set up links toother voice call participants. In such cases, Call Broker 199 may causevoice links to be established to one or more non-chat-participant lines,either through PSTN links or through VoIP links.

1. A method for establishing a voice call between a plurality of textchat participants comprising: receiving a message from a first text chatparticipant requesting the establishment of the voice call; sending aresponse message to said first text chat participant providing voicecall session information and at least one authorization code; receivinga message comprising said voice call session information and anauthorization code from a second text chat participant requestingparticipation in said voice call; and initiating establishment of saidvoice call between said first text chat participant and said second textchat participant; wherein said initiating establishment of said voicecall further comprises requesting a call setup means to set up voicecall links to at least said first and second text chat participants, atleast one of said voice call links being a Voice over IP (VoIP) link;wherein communication between said plurality of text chat participantsfurther comprises an Internet chat session to which at least said firstand second text chat participants are connected through IP linksoriginating at telephone subscriber lines, each of said IP links beingidentified by a current IP address; wherein at least said first textchat participant additionally provides account and authorizationinformation in a login message process with a VoIP gateway, said VoIPgateway maintaining information about an online status and the currentIP address of said at least said first text chat participant; whereinsaid call setup means requests that said VoIP gateway establish at leastone of said voice call links; wherein said VoIP gateway establishes anIP link to a respective voice call participant; wherein an IP linkestablished to said first text chat participant uses said current IPaddress of said first text chat participant maintained at said VoIPgateway; wherein at least one of said voice call links is a PublicSwitched Telephone Network (PSTN) link; wherein said PSTN link isunavailable, the method further comprising: determining if thesubscriber line portion of said unavailable PSTN link is in current usein the Internet chat session through a respective ISP access server,forwarding said call to a network node having access to said Internetchat session, and sending a message from said network node to saidInternet chat session indicating the arrival of an incoming voice call.2. The method of claim 1 wherein said network node is said respectiveISP access server.
 3. The method of claim 1 wherein said network node isthe VoIP gateway having the current IP address information for the voicecall participant whose subscriber line is in current use in saidInternet chat session.
 4. The method of claim 1 wherein said determiningstep is performed by reference to the online status information storedat a network database.
 5. The method of claim 4 wherein said networkdatabase is maintained at said VoIP gateway.
 6. A system forestablishing a voice call between a plurality of text chat participantscomprising: means for receiving a message from a first text chatparticipant requesting the establishment of the voice call; means forsending a response message to said first text chat participant providingvoice call session information and at least one authorization code;means for receiving a message comprising said voice call sessioninformation and an authorization code from a second text chatparticipant requesting participation in said voice call; and means forinitiating establishment of said voice call between said first text chatparticipant and said second text chat participant; wherein said meansfor initiating establishment of said voice call further comprisesrequesting a call setup means to set up voice call links to at leastsaid first and second text chat participants, at least one of said voicecall links being a Voice over IP (VoIP) link; wherein communicationbetween said plurality of text chat participants further comprises anInternet chat session to which at least said first and second text chatparticipants are connected through IP links originating at telephonesubscriber lines, each of said IP links being identified by a current IPaddress; wherein at least said first text chat participant additionallyprovides account and authorization information in a login messageprocess with a VoIP gateway, said VoIP gateway comprising means formaintaining information about an online status and the current IPaddress of said at least said first text chat participant; wherein saidcall setup means further comprises means for requesting that said VoIPgateway establish at least one of said voice call links; wherein saidVoIP gateway further comprises means for establishing an IP link to arespective voice call participant; wherein an IP link established tosaid first text chat participant uses said current IP address of saidfirst text chat participant maintained at said VoIP gateway; wherein atleast one of said voice call links is a Public Switched TelephoneNetwork (PSTN) link; wherein said PSTN link is unavailable, the systemfurther comprising: means for determining if the subscriber line portionof said unavailable PSTN link is in current use in the Internet chatsession through a respective ISP access server, means for forwardingsaid call to a network node having access to said Internet chat session,and means for sending a message from said network node to said Internetchat session indicating the arrival of an incoming voice call.
 7. Thesystem of claim 6 wherein said network node is said respective ISPaccess server.
 8. The system of claim 6 wherein said network node is theVoIP gateway having the current IP address information for the voicecall participant whose subscriber line is in current use in saidInternet chat session.
 9. The system of claim 6 wherein said means fordetermining further comprises means for referring to the online statusinformation stored at a network database.
 10. The system of claim 9wherein said network database is maintained at said VoIP gateway.